<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
  <head>
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2008. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <meta http-equiv="Content-Style-Type" content="text/css">
    <title>
      Search Actions
    </title>
    <link rel="stylesheet" href="../book.css" charset="ISO-8859-1" type="text/css">
  </head>
  <body>
    <h1>
      Search Actions
    </h1>
	<p>
        Search menu commands:
	</p>
    <table border="1" cellspacing="0" cellpadding="5" width="100%" summary="Search menu commands">
      <tr>
        <th>
          <p>
            Name
          </p>
        </th>
        <th>
          <p>
            Function
          </p>
        </th>
      </tr>
      <tr align="left" valign="top">
        <td align="left" valign="top">
          <p>
            Search...
          </p>
        </td>
        <td align="left" valign="top">
          <p>
            Opens the search dialog (<b>Ctrl+H</b>)
          </p>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            File...
          </p>
        </td>
        <td align="left" valign="top">
          <p>
            Opens the search dialog on the File search page
          </p>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Java...
          </p>
        </td>
        <td align="left" valign="top">
          <p>
            Opens the search dialog on the Java search page
          </p>
        </td>
      </tr>
      
      <tr>
        <td align="left" valign="top">
          <p>
            Text
          </p>
        </td>
        <td align="left" valign="top">
          <p>
            Searches for the selected text in the chosen scope:
          </p>
          <ul>
            <li>Workspace (<b>Ctrl+Alt+G</b>)</li>
            <li>Project</li>
            <li>Hierarchy</li>
            <li>Working Set</li>
          </ul>
        </td>
      </tr>
      
      <tr>
        <td align="left" valign="top">
          <p>
            References
          </p>
        </td>
        <td align="left" valign="top">
          <p>
            Finds all references to the selected Java element in the chosen scope:
          </p>
          <ul>
            <li>Workspace (<b>Ctrl+Shift+G</b>):</li>
            <li>Project</li>
            <li>Hierarchy</li>
            <li>Working Set</li>
          </ul>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Declarations
          </p>
        </td>
        <td>
          <p>
          Finds all declarations of the selected Java element in the chosen scope:
          </p>
          <ul>
            <li>Workspace (<b>Ctrl+G</b>)</li>
            <li>Project</li>
            <li>Hierarchy</li>
            <li>Working Set</li>
          </ul>
          <p>Note: A strict declaration search would only ever return a single declaration. Since that's not interesting,
          declaration searches are relaxed as follows:</p>
          <ul>
            <li>Method declarations: Hierarchy search finds overriding and overridden methods in the hierarchy.
                Other searches find methods with the same name and signature, but ignoring declaring type and return type.</li>
            <li>Field declarations: Ignore the declaring type and the field's type.</li>
          </ul>
        </td>
      </tr>
      <tr align="left" valign="top">
        <td align="left" valign="top">
          <p>
            Implementors
          </p>
        </td>
        <td>
          <p>
          Finds all implementors of the selected interface in the chosen scope:
          </p>
          <ul>
            <li>Workspace</li>
            <li>Project</li>
            <li>Working Set</li>
          </ul>            
        </td>
      </tr>
      <tr align="left" valign="top">
        <td>
          Read Access
        </td>
        <td>
          <p>
          Finds all read accesses to the selected field in the chosen scope:
          </p>
          <ul>
            <li>Workspace</li>
            <li>Project</li>
            <li>Hierarchy</li>
            <li>Working Set</li>
          </ul>  
        </td>
      </tr>
      <tr align="left" valign="top">
        <td>
          Write Access
        </td>
        <td>
          <p>
          Finds all write accesses to the selected field in the chosen scope:
          </p>
          <ul>
            <li>Workspace</li>
            <li>Project</li>
            <li>Hierarchy</li>
            <li>Working Set</li>
          </ul>  
        </td>
      </tr>

      <tr>
        <td valign="top">
          <p>Occurrences in File</p>
        </td>

        <td valign="top">
          <p>Finds all occurrences of the selected Java element in its file (<b>Ctrl+Shift+U</b>)
          </p>
          <ul>
            <li>Identifier: Occurrences of all identifiers resolving to the selected element</li>
            <li>Implementing Methods: All methods implemented by the selected super-interface declaration</li>
            <li>Throwing Exceptions: All statements that possible throw the selected declared exception</li>
            <li>Method Exits: All statements that can exit the method of the selected return type</li>
            <li>Break/Continue Target: The targets of the selected break and continue statement</li>
          </ul>  
        </td>
      </tr>
      
      <tr>
        <td valign="top">
          <p>Referring Tests</p>
        </td>
        <td valign="top">
          <p>Finds all JUnit tests that refer to the currently selected type</p>
        </td>
      </tr>
     
    </table>
	
	<p>
        Search scopes submenu:
	</p>
    <table border="1" cellspacing="0" cellpadding="5" summary="Search scopes submenu">
      <tr>
        <th>
          <p>
            Scope
          </p>
        </th>
        <td>
          <strong>Availability</strong>
        </td>
        <th>
          <p>
            Description
          </p>
        </th>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Workspace
          </p>
        </td>
        <td>
          all elements
        </td>
        <td align="left" valign="top">
          <p>
            Searches in the full workspace
          </p>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Project
          </p>
        </td>
        <td>
          all elements
        </td>
        <td align="left" valign="top">
          <p>
            Searches in the project enclosing the selected element
          </p>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Hierarchy
          </p>
        </td>
        <td>
          types and members
        </td>
        <td align="left" valign="top">
          <p>
            Searches in the type's hierarchy
          </p>
        </td>
      </tr>
      <tr>
        <td align="left" valign="top">
          <p>
            Working Set
          </p>
        </td>
        <td>
          all elements
        </td>
        <td align="left" valign="top">
          <p>
            Searches in a working set
          </p>
        </td>
      </tr>
    </table>
    <p>
      Custom scopes can be configured using the working set dialog. Existing working sets 
      are shown in the Search scope submenus after they've been used in a search.
    </p>
    <p>
      A Java search can also be conducted via the context menu of all Java views.
      The search context menu is also available in the Java editor. The search is only performed if the currently selected text can be resolved to a Java element.
    </p>
    <p>
      The type of the selected Java element defines which search context menus are available. The Java editor does not constrain the list of available Java searches based on the
      selection.
    </p>
    <h3 class="related">Related concepts</h3>
      <a href="../concepts/concept-java-search.htm">Java search</a>
     <h3 class="related">Related references</h3>
       <a href="../reference/ref-dialog-java-search.htm">Java search tab</a>
  </body>
</html>

